The proliferation of portable, wireless devices has created a high demand for systems and methods to provide connectivity to various networks. One protocol that has been developed to provide such connectivity is Bluetooth, which is described in The Specification of the Bluetooth System, v1.0 B, Dec. 1, 1999 and is incorporated herein by reference. Bluetooth defines a communication protocol for wireless devices, such as personal digital assistants (PDAs). For example, FIG. 1 shows one implementation of a Bluetooth system 100 that includes a plurality of access points 115 connected to servers 120 through a network 110. Wireless devices 105 that are near the access points 115 can interact with the servers 120 through one of the access points 115. In some systems, the wireless devices 105 can access other devices such as peripheral devices, private networks, other wireless systems, etc.
Typically, Bluetooth-enabled access points have limited range and limited connection capacity. Bluetooth, for example, presently limits to seven the number of wireless devices that can actively connect to an access point. Additionally, Bluetooth limits the interaction between an access point and the wireless devices connected to it. For example, a wireless device can only transmit data to the access point when it is polled by that access point. To prevent blocking, i.e., to prevent one wireless device 105 from using all of the bandwidth, an access point 115 is required to poll each actively connected wireless device every N transmission slots, where N is defined by the clock accuracy of the wireless devices, by default, or by quality of service (QOS) parameters. In a simplified example, if there were five transmission slots per cycle and five wireless devices, then each device would get polled once per cycle.
This type of round robin scheduling assumes that each wireless device has the same amount of data to upload to the access point and that the upload rate will be constant. Modern communications, however, tend to be bursty rather than constant, and because Bluetooth does not define a method for addressing the bursty flow of data, present systems cause some wireless devices to be idle when they could otherwise be uploading data to the access point. Consider, for instance, the hypothetical case with ten transmission slots per cycle and five wireless devices connected to one of the access points. As before, each wireless device should get polled at least once each cycle. Present access points, for example, would poll the five wireless devices in the first five transmission slots and then poll none of the devices during the next five transmission slots. Table 1 illustrates the transmission slot allocation of such present access points. As is illustrated, no wireless device is capable of uploading data to the access point during transmission slots 6–10.
TABLE 1Transmission slot allocationTransmission12345678910SlotDevice Being12345EMPTYEMPTYEMPTYEMPTYEMPTYPolled
By not allocating the empty transmission slots, e.g., slots 6–10, to any wireless device, present access points waste precious bandwidth and slow the exchange of data with wireless devices. Because high bandwidth is one key to commercial success of Bluetooth-based and other wireless devices, a system and method is needed to better utilize transmission slots available to access points.